package templateMethod;

/*************************************************************
 *
 * 模板方法定义了一个算法的步骤，并允许子类为一个或多个步骤提供实现
 *
 *
 * 定义模板方法模式：
 * 在一个方法中定义一个算法的挂架，而将一些步骤延迟到子类中。模板方法
 * 使得子类可以在不改变算法结构的情况下，重新定义算法中的某些步骤
 *
 * 这个模板将算法定义成一组步骤，其中的任何步骤都可以是抽象的，由子类负责实现
 * 这可以确保算法的结构保持不变，同时由子类提供部分实现。
 *
 *************************************************************/
public class TemplateMethodTest {
    public static void main(String[] args) {
        Coffee coffee = new Coffee();
        Tea tea = new Tea();

        coffee.prepareRecipe();
        tea.prepareRecipe();
    }
}
